/* RTheme v3.0 */
/* Author: RavelloH */

/* global variable */
:root {
    --theme-gray-lighter: #393939;
    --theme-gray-light: #393631;
    --theme-gray: #252525;
    --theme-gray-dark: #1e1e1e;
    --theme-black: #111111;
    --theme-white: #c6c9ce;
    --theme-white-light: #ffffff;
    --theme-white-dark: #999B9F;
    --theme-blue-light: #03a9f4;
    --theme-blue-dark: #0078d7;
    --theme-yellow: #ffa30a;
    --theme-yellow-dark: #554400;
    --theme-red: #8e0800;
    --theme-red-dark: #821e1e95;
    --theme-orange: #fc560b;
    --theme-green-light: #5cdb95;
    --theme-green-dark: #357e56;
    --theme-fonts-regular: -apple-system, BlinkMacSystemFont, 'Microsoft YaHei', 'Segoe UI',
        'Roboto', 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
        'Segoe UI Symbol', system-ui;
    --theme-fonts-mono: 'IBMPlex', 'Courier New', monospace;
    --theme-fonts-special: 'Furore', 'Geometos';
    --theme-base-px: 14px;
    --px1: 0.071428571428571rem;
    --px2: 0.142857142857142rem;
    --px3: 0.214285714285714rem;
    --px4: 0.285714285714285rem;
    --px5: 0.357142857142857rem;
    --px6: 0.428571428571428rem;
    --px7: 0.5rem;
    --px8: 0.571428571428571rem;
    --px9: 0.642857142857142rem;
    --px10: 0.714285714285714rem;
    --px11: 0.785714285714285rem;
    --px12: 0.857142857142857rem;
    --px13: 0.928571428571428rem;
    --px14: 1rem;
    --px15: 1.071428571428571rem;
    --px16: 1.142857142857142rem;
    --px17: 1.214285714285714rem;
    --px18: 1.285714285714285rem;
    --px19: 1.357142857142857rem;
    --px20: 1.428571428571428rem;
}

[data-theme='light'] {
    --todo: 'yes';
}

/* fonts import */
/* main font */
@font-face {
    font-family: 'HarmonyOS';
    src: local('HarmonyOS Sans'), local('HarmonyOS'), local('Harmony OS');
    src: url('../fonts/HarmonyOS.ttf');
    font-display: swap;
}
/* effect font */
@font-face {
    font-family: 'Furore';
    src: url('../fonts/Furore.ttf'), local('Furore');
    font-display: swap;
}
@font-face {
    font-family: 'Geometos';
    src:
        url('../fonts/Geometos.ttf') format('truetype'),
        url('../fonts/Geometos.woff') format('woff'),
        local('Geometos');
    font-display: swap;
}
@font-face {
    font-family: 'ConnectCode39';
    src: url('../fonts/ConnectCode39.ttf'), local('ConnectCode39');
    font-display: swap;
}
/* code font */
@font-face {
    font-family: 'IBMPlex';
    src: url('../fonts/IBMPlex.ttf'), local('IBMPlex');
    font-display: swap;
}

/* global */
* {
    box-sizing: border-box;
}

*:focus-visible {
    outline: var(--theme-white) 2px solid;
    border-radius: 4px;
}

html {
    font-size: 14px;
    font-family: var(--theme-fonts-regular);
    line-height: 1.4;
    width: 100%;
    height: 100%;
}

body {
    width: 100%;
    height: 100%;
    color: var(--theme-white);
    background-color: var(--theme-black);
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
    -webkit-overflow-scrolling: touch;
    overflow: hidden;
    position: fixed;
    right: 0;
    transition: right 450ms;
}

body.active {
    right: 21.42857142857142rem;
}

strong:not(#sidebar *, footer *, #logo *, .button),
.strong {
    font-weight: bold;
    color: var(--theme-white-light);
}

#showcase {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
    flex-wrap: nowrap;
    align-items: stretch;
    justify-content: space-between;
    overflow: hidden;
    padding: calc(1.5rem + 1%) calc(40px + 1%) calc(2.25rem + 0.75%) calc(40px + 1%);
    transition: 0.5s;
}

::-webkit-scrollbar {
    width: 8px;
    height: 8px;
    background-color: #1e1e1e00;
}

::-webkit-scrollbar-track {
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    border-radius: 10px;
    background-color: #11111100;
    margin: 0 0 0 5px;
}

::-webkit-scrollbar-thumb {
    border-radius: 10px;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #c6c9ce60;
    transition: background-color 0.4s;
}

::-webkit-scrollbar-thumb:active,
::-webkit-scrollbar-thumb:hover {
    background-color: #c6c9ce;
}

::-webkit-scrollbar-corner,
::-webkit-resizer,
::-webkit-scrollbar-track-piece {
    background: #1e1e1e00;
}
::-webkit-scrollbar-button {
    display: none;
}

::selection {
    background-color: var(--theme-blue-dark);
    border-radius: 4px;
    color: var(--theme-white-light);
    text-decoration: underline 0.1em;
}

::-moz-selection {
    background-color: var(--theme-blue-dark);
    border-radius: 4px;
    color: var(--theme-white-light);
    text-decoration: underline 0.1em;
}

.barcode {
    font-family: ConnectCode39;
    font-size: 2em;
}

h1,
.h1 {
    font-size: 3.142rem;
    line-height: 3.428rem;
    color: #c6c9ce;
}

h2,
.h2 {
    font-size: 2.428rem;
    line-height: 2.857rem;
}

h3,
.h3 {
    font-size: 1.714rem;
    line-height: 2.286rem;
}

h4,
.h4 {
    font-size: 1.428rem;
    line-height: 2rem;
}

h5,
.h5 {
    font-size: 1.143rem;
    line-height: 1.714rem;
}

h6,
.h6 {
    font-size: 12px;
    line-height: 20px;
}

#cursor {
    position: fixed;
    width: 16px;
    height: 16px;
    background: #c6c9ce;
    border-radius: 8px;
    opacity: 0.25;
    z-index: 10000;
    pointer-events: none;
    transition: 0.2s ease-in-out;
    transition-property: background, opacity, transform;
}

#cursor.hidden {
    opacity: 0;
}

#cursor.hover {
    opacity: 0.1;
    transform: scale(2.5);
}

#cursor.active {
    opacity: 0.5;
    transform: scale(0.5);
}

#progress-container {
    height: 0.8em;
    width: 20rem;
    border-radius: 0.4rem;
    background: #000;
    transition: 0.5s;
    margin: 15px 5px 5px 5px;
    opacity: 1;
}

#progress-container #progress {
    height: 100%;
    width: 0;
    border-radius: 0.4rem;
    background: #c6c9ce50;
    transition: all 0.5s ease;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    opacity: 1;
    max-width: 100%;
}

#music-progress-container {
    height: 0.5em;
    width: calc(100% - 4px);
    border-radius: 0.4rem;
    background: #000;
    transition: 0.5s;
    margin: 3px 2px 3px 2px;
    padding: 0;
    opacity: 1;
}

#music-progress-container #music-progress {
    height: 98%;
    width: 0;
    border-radius: 0.4rem;
    background: #c6c9ce50;
    transition: all 0.5s ease;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    opacity: 1;
}

#progress-container #progress.red {
    background: var(--theme-red-dark);
}

#progress-container #progress.yellow {
    background: var(--theme-yellow-dark);
}

#sidebar {
    position: absolute;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: space-around;
    justify-content: space-between;
    width: 21.42857142857142rem;
    height: 100%;
    top: 0;
    left: 100%;
    background-color: var(--theme-gray-dark);
    padding: 2rem 25px 2rem 25px;
}

#userbar {
    padding: 2rem 25px 2rem 25px;
}

#sidebar-menu ul,
#sidebar-menu {
    overflow: hidden;
}

#sidebar-mid {
    overflow: auto;
}
#sidebar h2 {
    font-size: 3.572rem;
    font-weight: 700;
    color: #fff;
    line-height: 1em;
    text-transform: uppercase;
}

#sidebar h3 {
    font-size: 2.857rem;
    font-weight: 700;
    color: #fff;
    line-height: 1em;
    text-transform: uppercase;
}
#sidebar-menu {
    padding: 0 2em;
    margin: 0 auto;
    min-height: 50%;
}

#sidebar-menu ul {
    padding: 0;
    margin: 8px auto;
}

#sidebar-menu ul li {
    list-style: none;
}

#sidebar-menu ul li a {
    text-decoration: none;
    font-size: 1.429rem;
    color: var(--theme-white);
    font-family: Furore, var(--theme-fonts-regular);
    letter-spacing: 2px;
}
span:not(a span) {
    transition: 0.4s;
}
#infobar span.i {
    color: var(--theme-white);
}
#sidebar-menu ul li a:hover,
#side-iconset ul li a:hover,
#infobar span.i:hover {
    color: var(--theme-white-light);
}

.icons {
    display: flex;
}
.icons span {
    font-size: 1.2em;
    font-family: iconfont, Furore;
}

#viewmap > article #articles-body a:not(h1 a, h2 a, h3 a, h4 a, h5 a, h6 a) {
    color: var(--theme-white-dark);
}

a {
    background-color: transparent;
    background-image: none;
    color: var(--theme-white);
    text-decoration: none;
    outline: 0;
    display: inline-block;
    position: relative;
    transition: all 0.3s cubic-bezier(0.28, 0.94, 0.82, 1.09);
}

a:after {
    content: '';
    position: absolute;
    width: 100%;
    transform: scaleX(0);
    height: 2px;
    bottom: 0;
    left: 0;
    background-color: #0087ca;
    transform-origin: bottom right;
    transition: transform 0.3s cubic-bezier(0.28, 0.94, 0.82, 1.09);
}

a:not(
        #sidebar *,
        footer *,
        #logo *,
        .button *,
        .tag,
        .articles-tags a,
        .no-effect,
        .taglist a,
        #articles-menu *,
        .flex-iconset *
    ):hover:after {
    transform: scaleX(1);
    transform-origin: bottom left;
}

hr {
    border: 0;
    border-top: 1px solid #dadada;
    box-sizing: content-box;
    display: block;
    height: 0;
    margin-top: 1.714rem;
    margin-bottom: 1.714rem;
}

#dot-load {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

#shade-global,
#shade-context,
#load-shade {
    z-index: -1;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    transition: 0.5s;
    opacity: 0;
    background: #111111;
}
#shade-global.active,
#shade-context.active {
    opacity: 0.5;
    z-index: 10;
    transition: all 0.5s ease-in-out;
}
#shade-global.active {
    z-index: 70;
}
#load-shade.active {
    opacity: 1;
    z-index: 10;
    transition: all 0.5s ease-in-out;
}
#load-shade.none {
    display: none;
}
#load-shade {
    display: grid;
    place-items: center;
    justify-items: center;
    align-content: center;
    justify-content: center;
    align-items: center;
}

#infobar {
    top: 100%;
    position: absolute;
    width: 100%;
    height: 55%;
    background: var(--theme-gray-dark);
    transition: 0.4s;
    z-index: 71;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: space-around;
    justify-content: space-between;
}

#infobar.active {
    top: 45%;
}

#infobar-header,
#userbar-head {
    font-size: 2rem;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    background-color: var(--theme-gray);
}

#infobar-header *,
#userbar-head * {
    margin: 0.357rem 1.071rem;
}

#infobar-title,
#userbar-title {
    font-weight: 500;
    margin: 0.357rem 1.786rem;
    text-transform: uppercase;
}

#infobar-context {
    height: calc(100% - 6rem);
    margin: 0.714rem 1.786rem;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: space-around;
    justify-content: space-between;
    align-items: stretch;
}

#userbar-context {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    height: 100%;
    padding: 1em 0;
}

#user-info {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
}

#user-describe {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: flex-start;
    justify-content: center;
    align-items: flex-start;
    margin-left: 1em;
}

#user-name {
    font-size: 1.5em;
    color: var(--theme-white-light);
    font-weight: 500;
}

#user-main {
    padding: 1em 0 0 0;
    overflow-y: auto;
}

#infobar-left {
    flex: 6;
    padding: 0 0 0 0;
    overflow-y: auto;
    overflow-x: hidden;
    max-width: 60%;
}

#infobar-right {
    flex: 4;
    padding: 0 0 0 2em;
    overflow-y: auto;
    overflow-x: hidden;
    max-width: 40%;
}

#time {
    font-size: 5em;
    font-weight: 700;
    color: #fff;
    line-height: 1em;
    text-transform: uppercase;
}

#music-player {
    border: 1px solid var(--theme-white);
    width: 100%;
    height: fit-content;
    padding: 0.714rem 0.357rem 0.214rem 0.357rem;
    margin: 0.357rem 0;
    border-radius: 5px;
}

#music-operation {
    display: flex;
    padding: 0;
    margin: 0;
    justify-content: space-evenly;
}

#music-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

#music-name {
    font-weight: bold;
}

/* header */
header,
footer {
    position: relative;
    display: flex;
    justify-content: space-between;
    font-size: 1rem;
    align-content: center;
    align-items: center;
    flex-wrap: nowrap;
    flex-direction: row;
    width: 100%;
}

footer {
    height: 1.4em;
}

#header-side {
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: flex-end;
}

#navs,
#icons-left {
    position: relative;
    display: flex;
    text-align: right;
    font-weight: bold;
    overflow: hidden;
    align-content: center;
    align-items: center;
}

#navs nav a {
    margin-right: 2.143rem;
    transition-duration: 0.4s;
    text-decoration: none;
    transition-property: all;
}

#navs nav a.active:not(a:hover) {
    color: var(--theme-white-light);
}

#logo,
#icons-right {
    max-width: 25%;
    overflow: hidden;
    white-space: nowrap;
    text-transform: uppercase;
    display: inline-block;
}

#logo a,
#icons-right a {
    display: flex;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    color: var(--theme-gray-light);
}

#icons-right {
    font-size: 1.4em;
    max-width: unset;
}

#icons-left a {
    margin-right: 2em;
    color: var(--theme-gray-light);
    font-size: 1.2em;
}

#avatar {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    display: inline-block;
    transition: 0.5s;
}

#user-avatar {
    width: 5.5rem;
    height: 5.5rem;
    border-radius: 50%;
    display: inline-block;
    transition: 0.5s;
}

#authorname {
    height: 3.2rem;
    display: inline-block;
}

#toggle {
    left: 0;
    position: relative;
    width: 2em;
    height: 2em;
    background: url('');
    background-repeat: no-repeat;
    background-size: 2em;
    background-position: center;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
    z-index: 11;
}

#toggle.active {
    left: 0;
    background: url('');
    background-repeat: no-repeat;
    background-size: 2em;
    background-position: center;
    cursor: pointer;
}

#logo:hover #avatar {
    transform: rotate(30deg);
    filter: contrast(120%);
}
/* footer */
#icons-left ul,
.flex-iconset ul,
#icons-right ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: space-between;
    height: 1.5em;
    align-items: flex-end;
}

.flex-iconset {
    margin: 0.714rem 0 0 0;
}

#icons-right a {
    display: flex;
    flex-direction: row;
    align-content: center;
    align-items: center;
}

#icons-left *:hover,
#icons-right *:hover {
    color: var(--theme-orange);
}

#icons-right .red {
    color: var(--theme-red-dark);
}

#icons-right .yellow {
    color: var(--theme-yellow-dark);
}

span.red {
    color: var(--theme-red);
}
span.yellow {
    color: var(--theme-yellow);
}

#side-iconset ul li a {
    color: var(--theme-white);
}

ul li a span {
    top: 0.25ex;
}

.circle-loader {
    width: 1.2em;
    height: 1.2em;
    border-radius: 50%;
    border: 4px solid;
    border-color: var(--theme-gray);
    border-right-color: var(--theme-gray-lighter);
    animation: circle-loader-frames 1s infinite linear;
    display: inline-block;
}
@keyframes circle-loader-frames {
    to {
        transform: rotate(1turn);
    }
}

.breath * {
    animation: breath-frames 1.5s infinite ease-in-out;
}

.breath span:nth-child(1) {
    animation-delay: 0.2s;
}
.breath span:nth-child(2) {
    animation-delay: 0.3s;
}
.breath span:nth-child(3) {
    animation-delay: 0.4s;
}
.breath span:nth-child(4) {
    animation-delay: 0.5s;
}
.breath span:nth-child(5) {
    animation-delay: 0.6s;
}
.breath span:nth-child(6) {
    animation-delay: 0.7s;
}

@keyframes breath-frames {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0.25;
    }
    100% {
        opacity: 1;
    }
}
/* main */
#main,
#viewmap {
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    width: 100%;
    height: 100%;
    left: 0;
    margin: 0.7142rem 0.1428rem;
    overflow: hidden;
}

#viewmap > div {
    max-height: 100%;
}

/* tag */
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
pre,
dl,
dd,
blockquote,
button,
input {
    margin: 0;
}

input,
legend,
textarea,
button {
    padding: 0;
}

form,
fieldset,
th,
td {
    margin: 0;
    padding: 0;
}

ol,
ul {
    margin: 0.8571rem 0;
    padding: 0 0 0 2.2857rem;
}

ol.reset,
ul.reset {
    margin: 0;
    padding: 0;
    list-style: none;
}

ol ol,
ol ul,
ul ol,
ul ul {
    margin-top: 0;
    margin-bottom: 0;
}

a:link {
    color: var(--theme-white);
}

a:visited {
    color: #c6c9ce50;
}

a:hover {
    color: var(--theme-blue-light);
    text-decoration: none;
}

a:active {
    color: var(--theme-blue-dark);
}
.green-text {
    background-image: linear-gradient(to right, var(--theme-white-light), var(--theme-green-light));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    text-transform: uppercase;
}

.red-text {
    background-image: linear-gradient(to right, var(--theme-white-light), var(--theme-red));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    text-transform: uppercase;
}

.texts {
    position: relative;
}

.texts h2,
#load-content h2 {
    font-size: 5em;
    font-weight: 800;
    color: #fff;
    line-height: 1em;
    text-transform: uppercase;
}

.texts h3,
#load-content h3,
#infobar-left h3 {
    font-size: 4em;
    font-weight: 700;
    color: #fff;
    line-height: 1em;
    text-transform: uppercase;
}

.texts h4,
#infobar-left h4,
#load-content h4,
#infobar-right h4 {
    font-size: 2em;
    font-weight: 600;
    color: #fff;
    line-height: 1em;
    text-transform: uppercase;
}

.texts h5,
#infobar-left h5 {
    font-size: 1.7em;
    font-weight: 600;
    line-height: 1em;
}
.texts p,
.textarea {
    font-size: 1em;
    color: #fff;
    margin: 1.4286rem 0;
    font-weight: 400;
    max-width: 700px;
}

a.button {
    display: inline-block;
    font-size: 1em;
    background: #fff;
    padding: 0.7143rem 2.1428rem;
    text-transform: uppercase;
    text-decoration: none;
    font-weight: 500;
    margin-top: 0.7143rem;
    color: #111;
    letter-spacing: 2px;
    transition: 0.2s;
}

a.button:hover {
    letter-spacing: 6px;
}

.virgule {
    font-weight: 400;
    max-width: 100%;
    color: #fff;
    overflow: hidden;
    white-space: nowrap;
    letter-spacing: 1px;
    animation-delay: 0.3s;
    font-size: 1.5em;
    font-family: 'Furore', sans-serif;
    height: fit-content;
    line-height: 130%;
    margin: 0.357rem 0;
    display: block;
}

.flex-items,
.flex-items-center {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: center;
    width: 100%;
    align-content: center;
    height: 1.4em;
}

.flex-items-center {
    justify-content: center;
    height: auto;
}

.info-alert {
    background-color: #821e1e75;
    width: 100%;
    height: fit-content;
    border: 1px solid var(--theme-red-dark);
    border-radius: 5px;
    padding: 0.7142rem 0.357rem;
    margin: 0.3571rem 0;
}

.info-warning {
    background-color: #55440075;
    width: 100%;
    height: fit-content;
    border: 1px solid var(--theme-yellow-dark);
    border-radius: 5px;
    padding: 0.7142rem 0.357rem;
    margin: 0.3571rem 0;
}

.info-success {
    background-color: #357e5675;
    width: 100%;
    height: fit-content;
    border: 1px solid var(--theme-green-dark);
    border-radius: 5px;
    padding: 0.7142rem 0.357rem;
    margin: 0.3571rem 0;
}
.info {
    border: 1px solid var(--theme-white);
    width: 100%;
    height: fit-content;
    padding: 0.7142rem 0.357rem;
    margin: 0.3571rem 0;
    border-radius: 5px;
}

.form-control {
    position: relative;
    margin: 0px 0 2.8571rem;
    width: 100%;
}

.form-control input {
    background-color: transparent;
    border: 0;
    border-bottom: 2px #fff solid;
    display: block;
    width: 100%;
    padding: 0.8571rem 0;
    font-size: 1.2em;
    color: #fff;
    transition: 0.8s;
}

.form-control input:focus,
.form-control input:valid {
    outline: 0;
    border-bottom-color: lightblue;
}

.form-control label {
    position: absolute;
    top: 0.8571rem;
    left: 0;
    pointer-events: none;
}
.input {
    position: relative;
}
.form-control label span {
    display: inline-block;
    font-size: 1.1428rem;
    min-width: 0.3571rem;
    color: #fff;
    transition: 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition-delay: calc(var(--i) * 50ms);
}

.form-control input:focus + label span,
.form-control input:valid + label span {
    color: lightblue;
    transform: translateY(-1.7857rem);
}

.listlines {
    max-width: 40%;
    min-width: 35%;
    overflow-y: auto;
    overflow-x: hidden;
}

.work-program > h4 {
    margin: 0 0 0.7142rem 0;
    font-weight: 700;
    font-size: 1.5em;
    text-decoration: underline 0.1em;
}

.work-program > aside {
    display: none;
}

#infobar-left {
    -ms-overflow-style: none;
    scrollbar-width: none;
}
#infobar-left::-webkit-scrollbar,
.share-input::-webkit-scrollbar {
    display: none;
}

img.loaderror::before {
    position: absolute;
    font-family: 'Remix';
    top: 0;
    left: 0;
    display: block;
    content: '\e326';
    background-size: cover;
}

.music-search-img img {
    width: 3rem;
    height: 3rem;
    border-radius: 5px;
    background-image: url('../images/music.jpg');
    background-size: 3rem 3rem;
}

.music-search-img {
    padding: 0 0.8em 0 0;
}

.music-search-info,
.setting-info {
    width: calc(100% - 80px);
    display: flex;
    flex: 9 1 auto;
}

.music-search-name,
.setting-name {
    font-weight: bold;
    color: var(--theme-white-light);
    font-size: 1.25rem;
    line-height: 1.35rem;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.music-search-author,
.setting-explain {
    font-size: 1rem;
    line-height: 1rem;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.music-search-title,
.setting-title {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex-wrap: nowrap;
    align-items: stretch;
    height: 3rem;
    width: calc(100% - 100px);
}

.setting-title {
    width: calc(100% - 50px);
}

.music-search-result,
.setting-result {
    display: flex;
    height: 3rem;
    justify-content: space-between;
    align-items: center;
}

.music-search-operation,
.setting-operation {
    padding: 0 1.5rem 0 0;
    font-size: 1.2rem;
    flex: 1 0 auto;
}

.music-search-list hr,
.setting-list hr,
hr.light {
    border-top: 3px solid var(--theme-gray);
    height: 1px;
    margin: 0;
    margin-top: 3px;
    padding-bottom: 3px;
}

.square-loader {
    width: 150px;
    height: 15px;
    margin: 100px auto;
    text-align: center;
}
.square-loader span {
    display: inline-block;
    width: 1.0714rem;
    height: 100%;
    margin-right: 0.3571rem;
    background: var(--theme-gray-lighter);
    -webkit-animation: load 1.51s ease infinite;
    animation: load 1.51s ease infinite;
}
.square-loader span:last-child {
    margin-right: 0px;
}
@-webkit-keyframes load {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes load {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
.square-loader span:nth-child(1) {
    animation-delay: 0.13s;
}
.square-loader span:nth-child(2) {
    animation-delay: 0.26s;
}
.square-loader span:nth-child(3) {
    animation-delay: 0.39s;
}
.square-loader span:nth-child(4) {
    animation-delay: 0.52s;
}
.square-loader span:nth-child(5) {
    animation-delay: 0.65s;
}

.img-show,
.img-show-out {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    z-index: 9000;
    transition: all 0.5s;
    cursor: zoom-out;
    background-color: #11111180;
    top: 0;
    left: 0;
    display: grid;
    place-items: center;
    justify-items: center;
    align-content: center;
    justify-content: center;
    align-items: center;
}

.img-fullscreen,
.img-fullscreen-out {
    cursor: zoom-out;
    z-index: 9100;
    position: absolute;
    max-width: 85%;
    max-height: 85%;
    opacity: 1;
    transition: all 0.5s;
}

.img-fullscreen-out {
    transition: all 0.5s;
    transform: translateX(-100%);
    opacity: 0;
}

.img-show-out {
    transition: all 0.4s;
    opacity: 0;
}

.share-area {
    width: 100%;
    height: 2rem;
    line-height: 2rem;
    background-color: var(--theme-gray-dark);
    color: var(--theme-white);
    border: 2px solid var(--theme-gray-lighter);
    border-radius: 4px;
    padding: 0;
    margin: 0.3571rem 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-content: center;
}

.share-input {
    padding: 0.25rem 10px;
    width: calc(100% - 50px);
    display: inline;
    line-height: 1.5rem;
    height: 100%;
    font-size: 1.1rem;
    color: #c6c9ce80;
    overflow-x: auto;
    overflow-y: hidden;
    word-break: break-all;
    white-space: nowrap;
}

.copy-button {
    position: relative;
    width: 50px;
    background-color: var(--theme-gray-lighter);
    display: inline;
    height: calc(2rem - 2px);
    padding: auto;
    margin: 0;
    float: left;
    text-align: center;
    margin: auto;
}

#uid,
.page-id {
    text-overflow: '';
    overflow: hidden;
    word-break: break-all;
    white-space: nowrap;
}

.switchs {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 20px;
    background-color: rgba(0, 0, 0, 0.25);
    border-radius: 20px;
    transition: all 0.3s;
}

.switchs::after {
    content: '';
    position: absolute;
    width: 18px;
    height: 18px;
    border-radius: 18px;
    background-color: var(--theme-white);
    top: 1px;
    left: 1px;
    transition: all 0.3s;
}

input[type='checkbox']:checked + .switchs::after {
    transform: translateX(20px);
}

input[type='checkbox']:checked + .switchs {
    background-color: var(--theme-gray-lighter);
}

.setting-list input {
    position: absolute;
    left: -9999px;
}

.speed-test-result {
    font-family: Furore;
}

.translucent {
    opacity: 0.5;
    transition: 0.4s;
}

.listlines * {
    transition: 0.4s;
}

.work-show,
.filter {
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: space-between;
    align-items: stretch;
    margin-right: 1.1428rem;
    height: 100%;
}

.operation-block,
.operation-block:active {
    display: block;
    background-color: var(--theme-gray-dark);
    border-radius: 4px;
    text-align: center;
    padding: 0.42857rem;
    transition: all 0.35s;
}

.operation-block:hover {
    background-color: var(--theme-gray);
}

.half {
    width: 55%;
}

.work-show-body,
.filter-body {
    overflow-y: auto;
    overflow-x: hidden;
}

.work-describe,
.search-result-context {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

#markdown-area h1,
#markdown-area h2,
#viewmap > article h1 {
    font-size: 2.428rem;
    line-height: 2.428rem;
    color: var(--theme-white-light);
    margin-top: 0.6em;
}

#markdown-area h3,
#viewmap > article h2 {
    font-size: 2em;
    margin-top: 0.5em;
}

#markdown-area h4,
#viewmap > article h3 {
    font-size: 1.75em;
    margin-top: 0.4em;
}

#markdown-area h5,
#viewmap > article h4 {
    font-size: 1.5em;
    margin-top: 0.4em;
}

#markdown-area h6,
#viewmap > article h5 {
    font-size: 1.2em;
    margin-top: 0.3em;
}

#viewmap > article h6 {
    font-size: 1.05em;
    margin-top: 0.3em;
}

#markdown-area h6::before,
#markdown-area h5::before,
#markdown-area h4::before,
#markdown-area h3::before,
#markdown-area h2::before,
#markdown-area h1::before {
    content: '# ';
    color: #f1f5fb;
}
#viewmap > article h2::before,
#viewmap > article h3::before,
#viewmap > article h4::before,
#viewmap > article h5::before,
#viewmap > article h6::before {
    content: '# ';
}

#userbar {
    top: 0;
    left: -21.42857142857142rem;
    position: absolute;
    width: 21.42857142857142rem;
    height: 100%;
    background: var(--theme-gray-dark);
    transition: 0.4s;
    z-index: 71;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: space-around;
    justify-content: space-between;
}

#userbar.active {
    left: 0;
}

blockquote,
.infos {
    border-left: 4px solid #7a7e80;
    padding: 0.4em;
    margin: 1em 0;
    font-size: 1em;
    font-weight: 300;
    color: #c6c9ce;
    background-color: rgb(255 255 255 / 5%);
    backdrop-filter: blur(1rem) brightness(80%);
    margin-left: 10%;
    margin-right: 10%;
    transition: background-color 0.4s;
}

blockquote:hover,
.infos:hover {
    background-color: var(--theme-gray-lighter);
    color: #fff;
}

blockquote:hover a,
.infos:hover a {
    transition: color 0.4s;
    color: #5babec;
}

pre {
    background: #2d2d2d;
    color: rgb(201, 209, 217);
    font-family: IBMPlex, monospace;
    text-align: left;
    padding: 1em;
    padding-left: 0.8em;
    margin: 1em;
    border-radius: 0.3571rem;
    counter-reset: line;
    word-spacing: normal;
    word-break: normal;
    line-height: 0;
    white-space: pre-wrap;
    word-wrap: break-word;
    overflow: auto;
}

pre span:not(span[highlight], span[class*='hljs']) {
    display: block;
    line-height: 1.8rem;
    white-space: pre;
}

pre span:not(span[highlight], span[class*='hljs']):before {
    counter-increment: line;
    content: counter(line);
    display: inline-block;
    width: 3em;
    text-align: right;
    border-right: 2px solid #999;
    padding-right: 0.8em;
    margin-right: 1em;
    color: #999;
}

pre span:not(span[highlight], span[class*='hljs']):hover:before {
    color: #c6c9ce;
}

pre:has(span) {
    white-space: normal;
}

code {
    font-family: IBMPlex, Consolas, Monaco, courier, monospace;
    line-height: initial;
    padding: 0.1em 0.4em;
    margin: 0;
    font-size: 85%;
    white-space: break-spaces;
    border-radius: 6px;
}

pre code {
    padding: 0.1em 0;
    color: rgb(201, 209, 217);
    background-color: #2d2d2d;
}

.article code:not(pre code),
#markdown-area code:not(pre code) {
    background-color: #333333;
}

#markdown-area p {
    color: #f1f5fb;
    margin: 0.6em 0;
}

table {
    font-family: Arial, Helvetica, sans-serif;
    border-collapse: collapse;
    width: 90%;
    color: #c6c9ce;
    text-align: center;
    margin: 0 auto;
    overflow: auto;
    font-size: 1em;
}

table td,
table th {
    border: 1px solid #ddd;
    padding: 0.42857rem;
}

table tr:hover {
    background-color: #1e1e1e;
}

table th {
    padding-top: 0.42857rem;
    padding-bottom: 0.42857rem;
    font-weight: bolder;
    background-color: #80808040;
    color: white;
}

.link,
a:not(header *, footer *, #sidebar *, .noline, .no-effect, a:has(> img))[href^='http'] {
    text-decoration: underline;
}
.link::before,
a:not(header *, footer *, #sidebar *, .noline, .no-effect, a:has(> img))[href^='http']::before {
    font-family: 'Remix' !important;
    content: '\e2ff';
    font-size: 0.9em;
    bottom: 0;
}

.texts img {
    max-height: 100%;
    max-width: 100%;
}

.imgcard {
    width: 100%;
}

.imgcard img {
    width: 100%;
    height: auto;
    min-height: 14.2857rem;
    margin-bottom: 10px;
    border: 1px solid var(--theme-gray);
    border-radius: 4px;
}

#viewmap > article img:not(#articles-footer *, .reset) {
    max-width: 95%;
    height: auto;
    margin: 0 auto;
    border-radius: 6px;
    text-align: center;
    max-height: 60vh;
    display: block;
}

.imgarea {
    --column-count-small: 1;
    --column-count-medium: 2;
    --column-count-large: 3;
    --column-gap: 0.125rem;
    padding: var(--column-gap);
}

.imglist {
    column-gap: var(--column-gap);
    column-count: var(--column-count-small);
    column-width: calc(1 / var(--column-count-small) * 100%);
}

@media only screen and (min-width: 640px) {
    .imglist {
        column-count: var(--column-count-medium);
        column-width: calc(1 / var(--column-count-medium) * 100%);
    }
}

@media only screen and (min-width: 800px) {
    .imglist {
        column-count: var(--column-count-large);
        column-width: calc(1 / var(--column-count-large) * 100%);
    }
}

.imglist > img {
    width: 100%;
    height: auto;
    margin: var(--column-gap) 0;
    display: block;
    border: 1px solid var(--theme-gray-dark);
    border-radius: 4px;
}

.imglist > img:first-child {
    margin: 0 0 var(--column-gap);
}

#showarea {
    height: 100%;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
}

/* 自定义属性 */
.center {
    text-align: center;
}
.full {
    width: 100%;
}
.overflow {
    overflow-y: auto;
    justify-content: flex-start;
}

img.border {
    border: 2px solid #c6c9ce;
}

.hljs span::selection,
.hljs::selection {
    background: #373b41;
}

.hljs span::-moz-selection,
.hljs::-moz-selection {
    background: #373b41;
}

.hljs-name,
.hljs-title {
    color: #f0c674;
}

.hljs-comment,
.hljs-meta,
.hljs-meta .hljs-keyword {
    color: #707880;
}

.hljs-deletion,
.hljs-link,
.hljs-literal,
.hljs-number,
.hljs-symbol {
    color: #c66;
}

.hljs-addition,
.hljs-doctag,
.hljs-regexp,
.hljs-selector-attr,
.hljs-selector-pseudo,
.hljs-string {
    color: #b5bd68;
}

.hljs-attribute,
.hljs-code,
.hljs-selector-id {
    color: #b294bb;
}

.hljs-bullet,
.hljs-keyword,
.hljs-selector-tag,
.hljs-tag {
    color: #81a2be;
}

.hljs-subst,
.hljs-template-tag,
.hljs-template-variable,
.hljs-variable {
    color: #8abeb7;
}

.hljs-built_in,
.hljs-quote,
.hljs-section,
.hljs-selector-class,
.hljs-type {
    color: #de935f;
}

.hljs-emphasis {
    font-style: italic;
}

.hljs-strong {
    font-weight: 700;
}

img:not(*.loaded, header *, footer *, #sidebar *, #infobar *, #twikoo *) {
    background-color: var(--theme-gray);
    background: linear-gradient(100deg, #111111 40%, #11111150 50%, #111111 60%) var(--theme-gray);
    background-size: 200% 100%;
    background-position-x: 180%;
    animation: 1s loading ease-in-out 30;
}

@keyframes loading {
    to {
        background-position-x: -20%;
    }
}

a.tag,
a.class,
.article a.tag,
a.m,
.class a,
.articles-tags a,
.taglist a {
    display: inline-block;
    font-size: 1em;
    padding: 0.3571rem 0.7142rem;
    text-transform: uppercase;
    text-decoration: none;
    font-weight: 500;
    letter-spacing: 2px;
    transition: 1s;
    font-family: var(--theme-fonts-special), var(--theme-fonts-regular);
}

a.tag:not(.ellipsis):before,
.articles-tags a:not(.ellipsis):before,
.taglist a:before {
    content: '#';
}

a.tag + a.tag,
.articles-tags a + a,
.taglist a + a {
    margin: 0 0.1428rem 0 0;
}
a.tag,
.articles-tags a:not(#articles-header *),
.taglist a {
    background-color: var(--theme-gray-dark);
    border-radius: 20px;
}

.articles-tags .active {
    background-color: var(--theme-gray-lighter);
    color: var(--theme-white-light);
    font-weight: bold;
}

.taglist a:hover,
.articles-tags a:hover {
    color: var(--theme-white-light);
}
.taglist a.active {
    background-color: var(--theme-gray-lighter);
}

.articles-name h4 a,
.articles-info {
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.articles-tags:not(#articles-header .articles-tags) {
    width: 100%;
    overflow: hidden;
    display: inline-box;
    white-space: nowrap;
}

.loading {
    opacity: 0;
    transition-property: opacity;
    transition: opacity 0.3s;
}

.loaded:not(.no-delay) {
    transition-delay: calc((0.1s * var(--i)));
    opacity: 1;
}

.no-delay,
*:hover,
.loaded:hover {
    transition-delay: unset;
}

.articles-info time:before {
    content: '\e8cd\ ';
    font-family: 'Remix' !important;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
    top: 0.12em;
}

.articles-info .class a {
    padding: 0.2143rem 0.3571rem;
}

.articles-info .class .active,
.class .active {
    font-weight: bold;
    color: var(--theme-white-light);
}

#viewmap > article {
    width: 100%;
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    word-break: break-all;
    scroll-behavior: smooth;
}

#articles-body img:not(.reset) {
    max-height: 90%;
    max-width: 90%;
    margin: 0 auto;
    position: relative;
}

#articles-body p + * {
    margin-top: 1em;
}

#articles-menu span {
    font-weight: 400;
    color: var(--theme-white);
    overflow: hidden;
    white-space: nowrap;
    letter-spacing: 1px;
    line-height: 130%;
    font-size: 1.15rem;
}

#articles-menu,
#articles-menu a {
    counter-reset: h1 h2 h3 h4 h5 h6;
    color: var(--theme-white);
    transition: all 0.5s;
}

#articles-menu *:hover {
    color: var(--theme-white-light);
}

#articles-menu .t6 span:before {
    counter-increment: h6;
    content: counter(h2) '.' counter(h3) '.' counter(h4) '.' counter(h5) '.' counter(h6) '.';
}

#articles-menu .t5 span:before {
    counter-increment: h5;
    content: counter(h2) '.' counter(h3) '.' counter(h4) '.' counter(h5) '.';
}

#articles-menu .t4 span:before {
    counter-increment: h4;
    content: counter(h2) '.' counter(h3) '.' counter(h4) '.';
}

#articles-menu .t3 span:before {
    counter-increment: h3;
    content: counter(h2) '.' counter(h3) '.';
}

#articles-menu .t2 span:before {
    counter-increment: h2;
    content: counter(h2) '.';
}

#articles-menu .t1 a,
#articles-more .article-name a {
    width: 100%;
    font-size: 2em;
    font-weight: 600;
    color: var(--theme-white-light);
    text-align: center;
}

#articles-menu .active {
    font-weight: 700;
    color: var(--theme-white-light);
}

.imgbox {
    display: flex;
    text-align: center;
    margin: 0 auto;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    align-content: center;
    padding: 1em;
}

.imgbox img {
    max-width: 100%;
    margin: 0 auto;
}

.imgbox span {
    color: var(--theme-white-dark);
    font-size: 85%;
}

code {
    line-height: initial;
    padding: 0.1em 0.4em;
    margin: 0;
    font-size: 85%;
    white-space: break-spaces;
    border-radius: 6px;
}

#articles-body code:not(pre code) {
    background-color: #333333;
}
#feed-list,
#uptime-list {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

#articles-sort span,
#feed-list a,
#mail-feed,
#uptime-list a,
#articles-sort span:active,
#feed-list a:active,
#mail-feed:active,
#uptime-list a:hover {
    width: 45%;
    font-size: 1.2em;
    background-color: var(--theme-gray);
    margin: 0.35em;
    padding: 0.2em;
    text-align: center;
    line-height: 2;
    border-radius: 6px;
    transition: all 0.4s;
}

#feed-list a,
#uptime-list a {
    width: 30%;
}

#mail-feed,
#mail-feed:active {
    width: calc(100% - 0.7em);
}

#articles-sort span:hover,
#feed-list a:hover,
#uptime-list a:hover,
#articles-sort span.active,
#mail-feed:hover {
    background-color: var(--theme-gray-lighter);
}

#feed-list div,
#mail-feed,
#uptime-list div {
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
    justify-content: space-evenly;
}

input[type='search']::-webkit-search-cancel-button {
    -webkit-appearance: none;
}

mark {
    background-color: #0b7dda;
    border-radius: 4px;
    color: #fff;
    margin: 0;
}

.search-result-tags {
    display: inline-block;
    font-size: 1em;
    padding: 0.3571rem 0.7143rem;
    text-transform: uppercase;
    text-decoration: none;
    font-weight: 500;
    letter-spacing: 1px;
    transition: 1s;
    font-family: var(--theme-fonts-special), var(--theme-fonts-regular);
    border-radius: 4px;
    background-color: var(--theme-gray-dark);
    line-height: 1.2;
    margin-bottom: 0.2142rem;
}

.one-line,
#icon-right {
    word-break: break-all;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

#search-bar {
    max-width: 70%;
}

#more-articles b {
    font-weight: bold;
    font-size: 1.25em;
}

#more-articles {
    margin: 1em 0;
    border: 2px solid var(--theme-gray-lighter);
    border-radius: 5px;
    width: 100%;
    display: flex;
    justify-content: space-between;
}

#more-articles > div {
    width: 50%;
    padding: 1.25em;
    transition: all 0.5s;
}

#next:hover:not(#next:active),
#previous:hover:not(#next:active) {
    background-color: var(--theme-gray-lighter);
    color: var(--theme-white-light);
}

#more-articles #next {
    float: right;
    text-align: right;
}

.tk-footer {
    display: none;
}

#friends-link-box {
    width: 100%;
    display: flex;
    height: auto;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
}

.friends-link-item,
.link-box,
.music-box {
    background: var(--theme-gray-dark);
    border-radius: 6px;
    transition: all 0.4s;
    width: 25rem;
    height: 7.142857142857142rem;
    margin: 1em;
    padding: 0.5em 1.5em 0.5em 0.5em;
}

.music-box {
    width: 25rem;
    height: 5.714285714285714rem;
    border-radius: 3em;
    margin: auto;
}

.link-box {
    margin: 1em auto;
    width: 32rem;
}

.friends-link-item:hover,
.link-box:hover,
.music-box:hover {
    background: var(--theme-gray-lighter);
    color: var(--theme-white-light);
}

.friends-link-item:hover .friends-bio,
.link-box .link-name,
.music-box .music-name {
    color: var(--theme-white-light);
}

.friends-link-item a,
.link-box a,
.music-box a {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%;
}

.friends-avatar,
.link-box img {
    height: 5.5em;
    width: 5.5em;
    margin: auto 1em;
    max-width: 100%;
}

.friends-avatar img {
    object-fit: cover;
    border-radius: 50%;
}

.link-box img {
    border-radius: 4px;
}

.music-box img {
    border-radius: 50%;
    margin: auto 1em;
    height: 100%;
}

.friends-info,
.link-describe,
.music-info {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    width: calc(100% - 5.5em - 2em);
}

.friends-name {
    font-size: 1.75em;
    font-weight: 700;
    color: var(--theme-white-light);
    line-height: 1.2;
}

.link-describe .link-name {
    font-size: 1.2em;
    font-weight: 600;
    color: var(--theme-white-light);
    line-height: 1.2;
}

.friends-bio,
.link-describe .link-href {
    transition: all 0.6s;
    font-size: 1.15em;
    font-weight: 600;
}

video {
    max-width: 100%;
    min-width: 70%;
    margin: auto;
    max-height: 60vh;
    border-radius: 4px;
}

#articles-body textarea {
    width: calc(100% - 20px);
    min-height: 21.42857142857142rem;
    border: 1px solid var(--theme-gray-lighter);
    background-color: var(--theme-gray);
    border-radius: 5px;
    margin: 10px;
    padding: 0.85em;
    color: var(--theme-white);
    font-family: var(--theme-fonts-mono);
}

kdb {
    font-family: IBMPlex, Consolas, Monaco, courier, monospace;
    text-transform: uppercase;
    line-height: initial;
    padding: 0.1em 0.4em;
    margin: 0 2px;
    font-size: 85%;
    white-space: break-spaces;
    border-radius: 6px;
    background-color: var(--theme-gray-dark);
    border: 1px solid var(--theme-white-dark);
}

#icons-left nav a {
    transition: color 0.6s;
}

#icons-left nav a:hover {
    color: var(--theme-orange);
}

/* 媒体查询 */
@media screen and (min-width: 1500px) {
    html {
        font-size: calc(0.8vw + 2px);
    }
}

@media screen and (max-width: 1000px) {
    html {
        font-size: calc(8.286px + 0.571vw);
    }
}

@media screen and (max-width: 700px) {
    #avatarname {
        display: none;
    }
    h1,
    .h1 {
        font-size: 2.5136rem;
        line-height: 2.7424rem;
        color: #c6c9ce;
    }

    h2,
    .h2 {
        font-size: 1.9424rem;
        line-height: 2.2856rem;
    }

    h3,
    .h3 {
        font-size: 1.3712rem;
        line-height: 1.8288rem;
    }

    h4,
    .h4 {
        font-size: 1.2852rem;
        line-height: 1.8rem;
    }

    h5,
    .h5 {
        font-size: 1.0287rem;
        line-height: 1.5426rem;
    }

    h6,
    .h6 {
        font-size: 12px;
        line-height: 20px;
    }
}

@media screen and (max-width: 600px) {
    #navs {
        display: none;
    }
    #showcase {
        padding: calc(1.25rem + 1%) calc(22px + 1%) calc(2rem + 0.75%) calc(22px + 1%);
    }
    #infobar {
        height: 75%;
    }
    #infobar.active {
        top: 25%;
    }
    #infobar-context {
        display: block;
        overflow: auto;
        flex-direction: column-reverse;
        vertical-align: bottom;
    }
    #infobar-left {
        max-width: 100%;
    }
    #infobar-right {
        padding: 0;
        margin-top: 1.25em;
        max-width: 100%;
    }

    .texts h2,
    #load-content h2 {
        font-size: 3.5em;
    }

    .texts h3,
    #load-content h3,
    #infobar-left h3 {
        font-size: 3em;
    }

    .texts h4,
    #infobar-left h4,
    #load-content h4,
    #infobar-right h4 {
        font-size: 2em;
    }

    .texts h5,
    #infobar-left h5 {
        font-size: 1.7em;
    }
}

@media screen and (max-width: 400px) {
    #showcase {
        padding: calc(1.25rem + 1%) calc(22px + 1%) calc(1.25rem + 0.75%) calc(22px + 1%);
    }
    .texts h2,
    #load-content h2 {
        font-size: 3.2em;
        font-weight: 800;
        color: #fff;
        line-height: 1em;
        text-transform: uppercase;
    }

    .texts h3,
    #load-content h3,
    #infobar-left h3 {
        font-size: 2.56em;
        font-weight: 700;
        color: #fff;
        line-height: 1em;
        text-transform: uppercase;
    }

    .texts h4,
    #infobar-left h4,
    #load-content h4,
    #infobar-right h4 {
        font-size: 1.28em;
        font-weight: 600;
        color: #fff;
        line-height: 1em;
        text-transform: uppercase;
    }

    .texts h5,
    #infobar-left h5 {
        font-size: 1.088em;
        font-weight: 600;
        line-height: 1em;
    }
    #icon-rss,
    #icon-studio {
        display: none;
    }
    #avatar {
        width: 2.5rem;
        height: 2.5rem;
    }
    footer {
        font-size: 0.85rem;
    }
    #load-content {
        font-size: 0.75rem;
    }
    #main,
    #viewmap {
        flex-direction: column;
        justify-content: center;
        align-content: flex-start;
        flex-wrap: nowrap;
        display: block;
        width: 100%;
        height: auto;
    }
    #main {
        float: left;
        overflow-y: auto;
        overflow-x: hidden;
    }
    #viewmap > div {
        width: 100%;
        text-align: center;
    }
    .form-control {
        margin: 0;
    }
    .listlines {
        max-width: 100%;
        width: 100%;
    }
    .half {
        width: unset;
    }
    #search-bar {
        max-width: 100%;
    }
    #viewmap > div {
        margin: 0 0 2em 0;
    }
    .virgule {
        line-height: 1em;
        font-size: 1rem;
    }
    #viewmap > article {
        height: auto;
        overflow: hidden;
        white-space: wrap;
    }
    #sidebar {
        padding: 2rem 15px 2rem 15px;
    }
}
